﻿using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using utils;


namespace dal.cgm_production_dao
{
    //public class InnerLabelInfo
    //{
    //    [DataMember]
    //    public int id { get; set; }
    //    [DataMember]
    //    public string production_code { get; set; }
    //    [DataMember]
    //    public string production_batch { get; set; }
    //    [DataMember]
    //    public string production_date { get; set; }
    //    [DataMember]
    //    public string expiry_date { get; set; }
    //    [DataMember]
    //    public string mac_address { get; set; }
    //    [DataMember]
    //    public string serial_code { get; set; }
    //    [DataMember]
    //    public DateTime create_time { get; set; }
    //    [DataMember]
    //    public DateTime update_time { get; set; }
    //    [DataMember]
    //    public int count { get; set; }
    //}

    //public class InnerLabelInfoDao
    //{
    //    public static void Insert(InnerLabelInfo data)
    //    {
    //        string sql = @"INSERT INTO inner_label_info
    //       (production_code,production_batch,production_date,expiry_date,mac_address,serial_code,create_time,update_time,count)
    //     VALUES
    //        (@production_code,@production_batch,@production_date,@expiry_date,@mac_address,@serial_code,@create_time,@update_time,@count)";
    //        List<MySqlParameter> parameters = new List<MySqlParameter>();
    //        parameters.Add(new MySqlParameter("@production_code", data.production_code));
    //        parameters.Add(new MySqlParameter("@production_batch", data.production_batch));
    //        parameters.Add(new MySqlParameter("@production_date", data.production_date));
    //        parameters.Add(new MySqlParameter("@expiry_date", data.expiry_date));
    //        parameters.Add(new MySqlParameter("@mac_address", data.mac_address));
    //        parameters.Add(new MySqlParameter("@serial_code", data.serial_code));
    //        parameters.Add(new MySqlParameter("@create_time", data.create_time));
    //        parameters.Add(new MySqlParameter("@update_time", data.update_time));
    //        parameters.Add(new MySqlParameter("@count", data.count));
    //        MySqlHelper.ExecuteNonQuery(ConfigString.cgm_production, sql, parameters.ToArray());
    //    }

    //    public static InnerLabelInfo GetMac(string mac)
    //    {
    //        string sql = @"SELECT id,production_code,production_batch,production_date,expiry_date,mac_address,serial_code,create_time,update_time,count FROM inner_label_info WHERE mac_address=@mac_address";
    //        List<MySqlParameter> parameters = new List<MySqlParameter>();
    //        parameters.Add(new MySqlParameter("@mac_address", mac));
    //        DataSet ds = MySqlHelper.ExecuteDataset(ConfigString.cgm_production, sql, parameters.ToArray());

    //        IList<InnerLabelInfo> list = DataContainerUtil.DataTableToList<InnerLabelInfo>(ds.Tables[0]);
    //        if (list.Count > 0)
    //        {
    //            return list[0];
    //        }
    //        else
    //        {
    //            return new InnerLabelInfo();
    //        }
    //    }

    //    public static InnerLabelInfo GetSerialCode(string serial_code)
    //    {
    //        string sql = @"SELECT id,production_code,production_batch,production_date,expiry_date,mac_address,serial_code,create_time,update_time,count FROM inner_label_info WHERE serial_code=@serial_code";
    //        List<MySqlParameter> parameters = new List<MySqlParameter>();
    //        parameters.Add(new MySqlParameter("@serial_code", serial_code));
    //        DataSet ds = MySqlHelper.ExecuteDataset(ConfigString.cgm_production, sql, parameters.ToArray());

    //        IList<InnerLabelInfo> list = DataContainerUtil.DataTableToList<InnerLabelInfo>(ds.Tables[0]);
    //        if (list.Count > 0)
    //        {
    //            return list[0];
    //        }
    //        else
    //        {
    //            return new InnerLabelInfo();
    //        }
    //    }

    //    public static void UpDate(InnerLabelInfo info)
    //    {
    //        if (info != null)
    //        {
    //            List<MySqlParameter> parameters = new List<MySqlParameter>();
    //            string sql = " UPDATE inner_label_info SET";
    //            sql = sql + " count=@count,";
    //            parameters.Add(new MySqlParameter("@count", info.count));
    //            sql = sql + " update_time=@update_time";
    //            parameters.Add(new MySqlParameter("@update_time", info.update_time));
    //            sql = sql + " WHERE production_batch=@production_batch";
    //            parameters.Add(new MySqlParameter("@production_batch", info.production_batch));
    //            sql = sql + " and  mac_address=@mac_address";
    //            parameters.Add(new MySqlParameter("@mac_address", info.mac_address));

    //            MySqlHelper.ExecuteDataset(ConfigString.cgm_production, sql, parameters.ToArray());
    //        }
    //    }
    //}
}
